内连接 inner join

内连接:表1 inner join 表2 on

语法1:select * from 表1

注:此语法灵活可以使用等于或者不等于来判断!!!

语法2:select * from 表1

注:此语法简便,仅等值字段连接,再using中仅需写两个表共有字段即可!

相等条件使用 on() 而不使用where

注:等值连接一次连接2个表+on(条件) 以后,才可以再连接第3个表

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
--inner join写法
SQL> SELECT  T.ENAME ,TT.DNAME,TTT.RULS  FROM EMP T INNER JOIN DEPT TT ON (T.DEPTNO=TT.DEPTNO) INNER  JOIN BONUS TTT ON (T.JOB = TTT.JOB);
ENAME      DNAME          RULS
---------- -------------- ---------
SMITH      RESEARCH       C
ALLEN      SALES          S
WARD       SALES          S
JONES      RESEARCH       M
MARTIN     SALES          S
BLAKE      SALES          M
CLARK      ACCOUNTING     M
SCOTT      RESEARCH       A
KING       ACCOUNTING     P
TURNER     SALES          S
ADAMS      RESEARCH       C
JAMES      SALES          C
FORD       RESEARCH       A
MILLER     ACCOUNTING     C
14 rows selected

--等值连接写法
SQL> SELECT T.ENAME,TT.DNAME,TTT.RULS FROM EMP T, DEPT TT, BONUS TTT WHERE T.DEPTNO= TT.DEPTNO AND T.JOB= TTT.JOB;
ENAME      DNAME          RULS
---------- -------------- ---------
SMITH      RESEARCH       C
ALLEN      SALES          S
WARD       SALES          S
JONES      RESEARCH       M
MARTIN     SALES          S
BLAKE      SALES          M
CLARK      ACCOUNTING     M
SCOTT      RESEARCH       A
KING       ACCOUNTING     P
TURNER     SALES          S
ADAMS      RESEARCH       C
JAMES      SALES          C
FORD       RESEARCH       A
MILLER     ACCOUNTING     C